capture log close
clear all
macro drop _all
set more off
set scheme s1mono
pause on

!mkdir output
use study1_deidentified.dta, clear

// Exclude non-white responders
drop if dem_racewhite != 1

// Exclude rounds w/ 'other' proposers
drop if proposer_race == "other"

label var symbolic_binary "Racial Resentment Indicator (1 = RR > 0.5, else = 0)"
label var overt_binary "Explicit Prejudice Indicator (1= EP > 0, 0 = else)"
label var accept_offer "Offer Accepted (1=Yes,0=No)"
label var round "Round of play"
label var offer_amount "Offer Amount in cents"

// Code up indicator for black proposer
gen black_proposer = 0
replace black_proposer=1 if proposer_race == "black"
label var black_proposer "Black Proposer (1=yes)"

// Code up indicators for interaction terms
gen faceblack_symbolic  = symbolic_binary * black_proposer
label var faceblack_symbolic "Black Proposer x Racial Resentment"
gen faceblack_overt  = overt_binary * black_proposer
label var faceblack_overt "Black Proposer x Explicit Prejudice"

// Code up indicators for employed v. unemployed
gen dem_work = 0
replace dem_work = 1 if dem_emp <= 2
label var dem_work "Working (1=yes)"

// Party identification:
gen dem_pid7=.
replace dem_pid7=0 if dem_partyid!=.
replace dem_pid7=1 if dem_lean==2
replace dem_pid7=2 if dem_partyid==2
replace dem_pid7=3 if dem_strongd==1
replace dem_pid7=-1 if dem_lean==1
replace dem_pid7=-2 if dem_partyid==1
replace dem_pid7=-3 if dem_strongr==1
label var dem_pid7 "Party ID 7 (-3=SR, 3=SD)"

label var dem_age "Age in years"
label var dem_edu "Education"
label var dem_male "Male (1=yes)"
label var dem_ideology "Ideology (1=V. Lib, 7=V. Consv)"
label var dem_opposeaa "Opposition to Affirmative Action (1-4)"
label var dem_obama "Vote for Obama 2012"
label var dem_income "Income"

** Table S1.1, main analysis

regress accept_offer i.offer_amount i.round black_proposer, robust cluster(responder_id)
outreg using output/TableS1.1_Study1_Acceptance.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.1_Study1_Acceptance.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.1_Study1_Acceptance.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.1_Study1_Acceptance.out, se bracket rdec(3) 3aster append

* Table S1.2, replace offer amount indicators with quadratic function of offer amount

gen offer_amount2 = (offer_amount^2)/100
label var offer_amount2 "Offer Amount squared / 100"

regress accept_offer offer_amount offer_amount2 i.round black_proposer, robust cluster(responder_id)
outreg using output/TableS1.2_Study1_Acceptance_QuadraticOfferAmount.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer offer_amount offer_amount2 i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.2_Study1_Acceptance_QuadraticOfferAmount.out, se bracket rdec(3) 3aster append

regress accept_offer offer_amount offer_amount2 i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.2_Study1_Acceptance_QuadraticOfferAmount.out, se bracket rdec(3) 3aster append

regress accept_offer offer_amount offer_amount2 i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.2_Study1_Acceptance_QuadraticOfferAmount.out, se bracket rdec(3) 3aster append
drop offer_amount2

* Table S1.3, drop round indicators

regress accept_offer i.offer_amount black_proposer, robust cluster(responder_id)
outreg using output/TableS1.3_Study1_Acceptance_NoRoundFE.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer i.offer_amount black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.3_Study1_Acceptance_NoRoundFE.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.3_Study1_Acceptance_NoRoundFE.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.3_Study1_Acceptance_NoRoundFE.out, se bracket rdec(3) 3aster append

* Table S1.4, respondent FE

xtreg accept_offer i.offer_amount i.round black_proposer, fe robust i(responder_id)
outreg using output/TableS1.4_Study1_Acceptance_RespondentFE.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

xtreg accept_offer i.offer_amount i.round black_proposer faceblack_symbolic, fe robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.4_Study1_Acceptance_RespondentFE.out, se bracket rdec(3) 3aster append

xtreg accept_offer i.offer_amount i.round black_proposer faceblack_overt, fe robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.4_Study1_Acceptance_RespondentFE.out, se bracket rdec(3) 3aster append

xtreg accept_offer i.offer_amount i.round black_proposer faceblack_symbolic faceblack_overt, fe robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.4_Study1_Acceptance_RespondentFE.out, se bracket rdec(3) 3aster append

* Table S1.5, respondent RE

xtreg accept_offer i.offer_amount i.round black_proposer, re robust i(responder_id)
outreg using output/TableS1.5_Study1_Acceptance_RespondentRE.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

xtreg accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, re robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.5_Study1_Acceptance_RespondentRE.out, se bracket rdec(3) 3aster append

xtreg accept_offer i.offer_amount i.round black_proposer overt_binary faceblack_overt, re robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.5_Study1_Acceptance_RespondentRE.out, se bracket rdec(3) 3aster append

xtreg accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, re robust i(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.5_Study1_Acceptance_RespondentRE.out, se bracket rdec(3) 3aster append

* Table S1.6, with covariates

regress accept_offer dem_age i.dem_edu dem_work i.dem_male dem_pid7 dem_ideology dem_opposeaa i.dem_obama dem_income i.offer_amount i.round black_proposer, robust cluster(responder_id)
outreg using output/TableS1.6_Study1_AcceptanceWithCovariates.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer dem_age i.dem_edu dem_work i.dem_male dem_pid7 dem_ideology dem_opposeaa i.dem_obama dem_income i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.6_Study1_AcceptanceWithCovariates.out, se bracket rdec(3) 3aster append

regress accept_offer dem_age i.dem_edu dem_work i.dem_male dem_pid7 dem_ideology dem_opposeaa i.dem_obama dem_income i.offer_amount i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.6_Study1_AcceptanceWithCovariates.out, se bracket rdec(3) 3aster append

regress accept_offer dem_age i.dem_edu dem_work i.dem_male dem_pid7 dem_ideology dem_opposeaa i.dem_obama dem_income i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.6_Study1_AcceptanceWithCovariates.out, se bracket rdec(3) 3aster append

* Table S1.7, treatment of missing data. 4 different approaches.
preserve

* Only people who answer all questions
gen dec_missing=choice==1
egen totmissing=sum(dec_missing), by(responder_id)

regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt if totmissing==0, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
outreg using output/TableS1.7_Study1_AcceptanceMissingData.out, se bracket rdec(3) ctitle("Only respondents without any missing decisions") 3aster replace

replace accept_offer=0 if dec_missing == 1 
regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
outreg using output/TableS1.7_Study1_AcceptanceMissingData.out, se bracket rdec(3) ctitle("Assuming all missing values rejected") 3aster append

replace accept_offer=1 if dec_missing == 1 
regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
outreg using output/TableS1.7_Study1_AcceptanceMissingData.out, se bracket rdec(3) ctitle("Assuming all missing values accepted") 3aster append

replace accept_offer=0 if dec_missing == 1 & black_proposer==1
replace accept_offer=1 if dec_missing == 1 & black_proposer==0
regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
outreg using output/TableS1.7_Study1_AcceptanceMissingData.out, se bracket rdec(3) ctitle("Extreme values; All Black offers accepted, all White offers accepted.") 3aster append
restore

* Table S1.8, probit analysis

probit accept_offer i.offer_amount i.round black_proposer, robust cluster(responder_id)
outreg using output/TableS1.8_Study1_AcceptanceProbit.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

probit accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.8_Study1_AcceptanceProbit.out, se bracket rdec(3) 3aster append

probit accept_offer i.offer_amount i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.8_Study1_AcceptanceProbit.out, se bracket rdec(3) 3aster append

probit accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.8_Study1_AcceptanceProbit.out, se bracket rdec(3) 3aster append

* Table S1.9, Logit analysis

logit accept_offer i.offer_amount i.round black_proposer, robust cluster(responder_id)
outreg using output/TableS1.9_Study1_Acceptancelogit.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

logit accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.9_Study1_Acceptancelogit.out, se bracket rdec(3) 3aster append

logit accept_offer i.offer_amount i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.9_Study1_Acceptancelogit.out, se bracket rdec(3) 3aster append

logit accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.9_Study1_Acceptancelogit.out, se bracket rdec(3) 3aster append

* Table S1.10, Allowing cutpoint of resentment to vary.

preserve

	local isfirst=1

	drop symbolic_binary overt_binary faceblack_symbolic faceblack_overt

	levelsof symbolic_index, local(templocal)
	foreach ctr of local templocal {

		gen symbolic_binary = symbolic_index > `ctr'
		label var symbolic_binary "Racial Resentment Indicator"

		gen faceblack_symbolic  = symbolic_binary * black_proposer
		label var faceblack_symbolic "Black Proposer x Racial Resentment"

		summ symbolic_binary
		local prop=r(mean)
		
		if `prop'<.90 & `prop'>.10 {
			regress accept_offer i.offer_amount i.round black_proposer symbolic_binary faceblack_symbolic, robust cluster(responder_id)
			if `isfirst'==1 {
				outreg using output//TableS1.10_Study1_Acceptance_VaryingCutpoint.out, se bracket rdec(3) ctitle("Racially Resentful if scale above `ctr'") addstat("Proportion Racially Resentful",`prop') 3aster replace
			} 
			else {
				outreg using output//TableS1.10_Study1_Acceptance_VaryingCutpoint.out, se bracket rdec(3) ctitle("Racially Resentful if scale above `ctr'") addstat("Proportion Racially Resentful",`prop') 3aster append
			}
		local isfirst=0
		}
		drop symbolic_binary faceblack_symbolic

	} 

	levelsof overt_index, local(templocal)
	foreach ctr of local templocal {

		gen overt_binary = overt_index > `ctr'
		label var overt_binary "Explicit Prejudice Indicator"

		gen faceblack_overt  = overt_binary * black_proposer
		label var faceblack_overt "Black Proposer x Explicit Prejudice"

		summ overt_binary
		local prop=r(mean)
		
		if `prop'<.90 & `prop'>.10  {
			regress accept_offer i.offer_amount i.round black_proposer overt_binary faceblack_overt, robust cluster(responder_id)
			outreg using output//TableS1.10_Study1_Acceptance_VaryingCutpoint.out, se bracket rdec(3) ctitle("Explicitly Prejudiced if scale above `ctr'") addstat("Proportion Explicitly Prejudiced",`prop') 3aster append
		}
		drop overt_binary faceblack_overt

	} 

restore

* Table S1.11, general ethnocentrism

gen ethno_scale = (((8-dem_lazy_white) - (((8-dem_lazy_black) + (8-dem_lazy_hisp) + (8-dem_lazy_asian))/3)) + ((8-dem_unint_white) - (((8-dem_unint_black) + (8-dem_unint_hisp) + (8-dem_unint_asian))/3)) + ((8-dem_untrst_white) - (((8-dem_untrst_black) + (8-dem_untrst_hisp) + (8-dem_untrst_asian))/3)) + ((8-dem_viol_white) - (((8-dem_viol_black) + (8-dem_viol_hisp) + (8-dem_viol_asian))/3)))/4

// Binary ethnocentricism indicator
gen ethno_binary = 0 
replace ethno_binary = 1 if ethno_scale > 0
label var ethno_binary "Ethnocentric Indicator (1= E > 0, 0= else)"

// Interaction
gen faceblack_ethno  = ethno_binary * black_proposer
label var faceblack_ethno "Black Proposer x Ethnocentric"

regress accept_offer i.offer_amount i.round black_proposer ethno_binary faceblack_ethno, robust cluster(responder_id)
outreg using output/TableS1.11_Study1_Acceptance_Ethnocentrism.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer i.offer_amount i.round black_proposer ethno_binary faceblack_ethno symbolic_binary faceblack_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.11_Study1_Acceptance_Ethnocentrism.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer ethno_binary faceblack_ethno overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.11_Study1_Acceptance_Ethnocentrism.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer ethno_binary faceblack_ethno symbolic_binary faceblack_symbolic overt_binary faceblack_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.11_Study1_Acceptance_Ethnocentrism.out, se bracket rdec(3) 3aster append

* Table S1.12, time pressure interactions

gen fast = 0 if Z == 2
replace fast = 1 if Z == 1
label var fast "Time Pressure (1 = 4 seconds, 0 = 10 seconds)"
gen faceblack_fast = fast * black_proposer
label var faceblack_fast "Black Proposer x Time Pressure"

gen faceblack_fast_symbolic = fast * black_proposer * symbolic_binary
label var faceblack_fast_symbolic "Black Proposer x Racial Resentment x Time Pressure"
gen fast_symbolic = fast * symbolic_binary
label var fast_symbolic "Racial Resentment x Time Pressure"

gen faceblack_fast_overt = fast * black_proposer * overt_binary
label var faceblack_fast_overt "Black Proposer x Explicit Prejudice x Time Pressure"
gen fast_overt = fast * overt_binary
label var fast_overt "Explicit Prejudice x Time Pressure"

regress accept_offer i.offer_amount i.round black_proposer fast faceblack_fast, robust cluster(responder_id)
outreg using output/TableS1.12_Study1_Acceptance_TimePressure.out, se bracket rdec(3) 3aster replace

regress accept_offer i.offer_amount i.round black_proposer fast symbolic_binary faceblack_symbolic fast_symbolic faceblack_fast faceblack_fast_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
outreg using output/TableS1.12_Study1_Acceptance_TimePressure.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer fast overt_binary faceblack_overt fast_overt faceblack_fast faceblack_fast_overt, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_overt
outreg using output/TableS1.12_Study1_Acceptance_TimePressure.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round black_proposer fast overt_binary symbolic_binary faceblack_overt faceblack_symbolic fast_overt fast_symbolic faceblack_fast faceblack_fast_overt faceblack_fast_symbolic, robust cluster(responder_id)
lincom black_proposer
lincom black_proposer + faceblack_symbolic
lincom black_proposer + faceblack_overt
test faceblack_symbolic=faceblack_overt
outreg using output/TableS1.12_Study1_Acceptance_TimePressure.out, se bracket rdec(3) 3aster append

* Table S1.13, Robustness to different approaches for handling learning effects

* treatment phase
gen early=round<=10 & round~=.
gen middle=round>10 & round<=20 & round~=.
gen late=round>20 & round~=.

gen fb_early=early*black_proposer
gen fb_mid=mid*black_proposer
gen fb_late=late*black_proposer
label var fb_early "Black Proposer x Early (1 = Rounds 1-10, 0 = else)"
label var fb_mid "Black Proposer x Middle (1 = Rounds 11-20, 0 = else)"
label var fb_late "Black Proposer x Late (1 = Rounds 21-30, 0 = else)"

gen sb_fb_early=early*faceblack_symbolic
gen sb_fb_mid=mid*faceblack_symbolic
gen sb_fb_late=late*faceblack_symbolic
label var sb_fb_early "Black Proposer x Racial Resentment x Early"
label var sb_fb_mid "Black Proposer x Racial Resentment x Middle"
label var sb_fb_late "Black Proposer x Racial Resentment x Late"

gen ob_fb_early=early*faceblack_overt
gen ob_fb_mid=mid*faceblack_overt
gen ob_fb_late=late*faceblack_overt
label var ob_fb_early "Black Proposer x Explicit Prejudice x Early"
label var ob_fb_mid "Black Proposer x Explicit Prejudice x Middle"
label var ob_fb_late "Black Proposer x Explicit Prejudice x Late"

regress accept_offer i.offer_amount i.round fb_*, robust cluster(responder_id)
outreg using output/TableS1.13_Study1_Acceptance_Learning.out, se bracket rdec(3) 3aster addnote("OLS coefficients with robust standard errors in brackets, clustered at respondent level.") replace

regress accept_offer i.offer_amount i.round  fb_* symbolic_binary sb_fb_*, robust cluster(responder_id)
outreg using output/TableS1.13_Study1_Acceptance_Learning.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round  fb_* overt_binary ob_fb_* , robust cluster(responder_id)
outreg using output/TableS1.13_Study1_Acceptance_Learning.out, se bracket rdec(3) 3aster append

regress accept_offer i.offer_amount i.round  fb_* symbolic_binary sb_fb_* overt_binary ob_fb_* , robust cluster(responder_id)
outreg using output/TableS1.13_Study1_Acceptance_Learning.out, se bracket rdec(3) 3aster append

* another learning story is about education, correlated with other stuff
gen educ_binary=dem_edu>=4 if dem_edu~=.
label var educ_binary "College Educated Subject (1 = Yes, 0 = No)"
gen fb_educ_binary=black_proposer*educ_binary
label var fb_educ_binary "Black Proposer x College Educated"
gen eb_fb_early=early*fb_educ_binary
label var eb_fb_early "Black Proposer x College Educated x Early"
gen eb_fb_mid=mid*fb_educ_binary
label var eb_fb_mid "Black Proposer x College Educated x Middle"
gen eb_fb_late=late*fb_educ_binary 
label var eb_fb_late "Black Proposer x College Educated x Late"
drop fb_educ_binary

regress accept_offer i.offer_amount i.round  fb_* symbolic_binary sb_fb_* overt_binary ob_fb_* educ_binary eb_fb_*, robust cluster(responder_id)
outreg using output/TableS1.13_Study1_Acceptance_Learning.out, se bracket rdec(3) 3aster append

